A user of a computer system is generally interacting with a computer program that is running on the computer system. The computer program provides a context to the user. The context includes a content that is displayed to the user. The context further includes properties that are not displayed to the user but that influence the interaction between the user and the program. An example for such a property is a state in which the program requires a specific input from the user. The interaction is done through a user interface. The user interface displays a part of the context to the user and registers activities of the user.
In the art, there are numerous contexts for which information that may be helpful to the user is provided to the user. In case the context is complex it is convenient to provide the information. A complex context may be a context that offers more than one possibility for inputs from the user. For the user it may not be obvious what input is required by the program. The provided information can give a description of the required input or give a list of possible inputs. A further example for the complex context includes a displayed content using a specific term. The provided information may give an explanation of the specific term.
Complex programs are programs for which the provision of information which may be helpful is convenient. The complex programs may provide the complex context or a large number of different contexts. Frequently, they require a lot of provided information.